package com.yk.template.spring.normal.dao.common.api;

import org.hibernate.Session;

import java.util.HashSet;

/**
 * Project Name:spring-normal
 * File Name:ICommonDao
 * Package Name:com.yk.template.spring.normal.dao.common.api
 * Date:2017/9/18 12:00
 * Author:zhangju
 * Description:
 * Copyright (c) 2017, 重庆云凯科技有限公司 All Rights Reserved.
 */


public interface ICommonDao {

    /**
     * 获取session
     *
     * @return session
     */
    Session getSession();

    /**
     * 添加
     * @param object 实体对象
     * @return 添加状态，true：成功，false：失败
     */
    boolean save(Object object);

    /**
     * 删除
     * @param object 实体对象
     * @return 删除状态，true：成功，false：失败
     */
    boolean delete(Object object);

    /**
     * 更新
     * @param object 实体对象
     * @return 更新状态，true：成功，false：失败
     */
    boolean update(Object object);

    /**
     * 获取与综合条件
     * @param conditions 条件队列
     * @return and 综合条件
     */
    String getAndCondition(HashSet<String> conditions);

    /**
     * 获取或综合条件
     * @param conditions 条件队列
     * @return or 综合条件
     */
    String getOrCondition(HashSet<String> conditions);
}
